Kodowanie: Windows-1250, końce wiersza CR+LF, test: zażółć gęślą jaźń Przedmiot : Systemy operacyjne > Linux > kolokwium Materiał : ćw. 1-5 (http://kik.pcz.pl/so/mainpage/laborki.htm) Data : 2005-05-21 Polecenia ========= Opcje występujące w wielu poleceniach: -r /recursive/ Rekurencyjnie uwzględnia też podkatalogi -v /verbose/ Gadatliwy, czyli wpisuje dużo informacji -i /interactive/ Pyta o potwierdzenie każdej operacji Inne przydatne polecenia: eval, exec, expr, printf, getops, tr, split, sed, awk _____ Pomoc man Pomoc na temat danego polecenia whatis Krótki opis, co robi polecenie apropos Jakie polecenia mówią o danym temacie _____ Pliki ls Zawartość katalogu -a Pokazuje też ukryte -A Pokazuje też ukryte z wyjątkiem . i .. -l Widok szczegółów z kolumnami -i Pokazuje też numery i-node - widać gdzie są sztywne linki pwd Pokazuje bieżący katalog cd Wejście do katlaogu - Powrót do poprzedniego katalogu .. Wyjście do katalogu nadrzędnego ~ Przejście do katalogu domowego (brak parametrów) Przejście do katalogu domowego cp Kopiuje mv Przenosi lub zmienia nazwę rm Usuwa plik ln Tworzy link -s Tworzy link symboliczny mkdir Tworzy katalog rmdir Usuwa katalog touch Tworzy pusty plik lub uaktualnia datę modyfikacji cat Pokazuje zawartość pliku chmod Ustala prawa dostępu do pliku chown . Ustala właściciela i grupę pliku wc Podaje informacje o pliku --bytes Liczba bajtów -w --words Liczba wyrazów -c --chars Liczba znaków -l --lines Liczba wierszy _____ Tekst more [plik] less [plik] Pokazuje duży plik lub wejście, pozwala na przewijanie head - [plik] Pokazuje x pierwszych linii z wejścia lub z pliku tail - [plik] Pokazuje x ostatnich linii z wejścia lub z pliku grep [plik] Pokazuje tylko te linie z wejścia lub z pliku, które zawierają podany tekst -v Pokazuje linie, które go nie zawierają -c Pokazuje tylko liczbę linii -n Pokazuje numery linii echo Pokazuje podany tekst -n Nie dodaje końca linii -e Pozwala na stosowanie znaków specjalnych od \ find Szuka plików na dysku kryteria (???) cut -f --delimiter Wycina z wejścia kolumnę o podanym numerze, jeśli kolumny są oddzielone podanym znakiem seq Wpisuje liczby 1, 2, 3, ..., liczba dialog --title --backtitle -- <0/1> <0/1> ... Pokazuje okienko i daje wybór Wynik zwraca na wyjściu błędów Rodzaj: yesno msgbox infobox textbox checklist radiolist menu _________ Systemowe set Pokazuje zmienne środowiskowe ps Pokazuje uruchomione procesy -a Pokazuje uruchomione na wszystkich konsolach -x Pokazuje też ukryte (bez konsoli) -u Pokazuje do każdego nazwę użytkonika i czas powstania top Program pokazujący uruchomione procesy i ich użycie procesora kill [-sygnał] Zabija proces bg Uruchamia program w tle (???) fg Przywraca pracujący w tle program who Pokazuje użytkowników zalogowanych w systemie i ich konsole uname Informacje o systemie -a --all Wszystkie -p --processor Procesor -n --nodename Nazwa komputera w sieci -m --machine Sprzęt -r --release Wersja jądra ____ Czas at Uruchamia polecenie o podanym czasie sleep Zatrzymuje działanie na podany czas w sekundach date Pokazuje datę i czas cal [[miesiąc] rok] Pokazuje kalendarz ____ Sieć ftp telnet ssh ___________ Komunikacja mail Wysyła do kogoś wiadomość write [konsola] Pisze komuś tekst na konsoli mesg Włącza lub wyłącza odbieranie komunikatów write Edytory ======= vi, vim joe mcedit Atrybuty ======== + Dodaje - Odbiera u /user/ Użytkownikowi (właścicielowi) g /group/ Grupie o /other/ Innym (wszystkim) r /read/ Prawo do odczytu Wartość: 4 w /write/ Prawo do zapisu Wartość: 2 x /execute/ Prawo do wykonywania Wartość: 1 l Link symboliczny c /character/ Urządzenie znakowe b Urządzenie blokowe d /directory/ Katalog Link sztywny jest wtedy, kiedy dwa pliki mają taki sam numer i-node. Sygnały ======= 9 Zabija proces, nie może być zignorowany 15 Domyślny, wyłącza proces Skróty klawiszowe ================= CTRL + D Koniec wprowadzania tekstu Wylogowanie CTRL + Z Odesłanie programu do pracy w tle CTRL + C Przerwanie pracy programu Znaki do łączenia poleceń ========================= polecenie ; polecenie Normalnie uruchamia jedno polecenie, a potem drugie polecenie & Uruchamia polecenie w tle polecenie & polecenie Uruchamia polecenia jednocześnie polecenie | polecenie Potok - wyjście polecenia pierwszego przekierowuje na wejście drugiego polecenie && polecenie Uruchamia drugie polecenie, jeśli pierwsze się uda (zwróci 0) polecenie || polecenie Uruchamia drugie polecenie, jeśli pierwsze się nie uda (zwróci nie 0) polecenie > plik Przekierowuje wyjście do pliku polecenie >> plik Dopisuje wyjście do pliku polecenie < plik Przekierowuje wejście z pliku polecenie 2> plik Przekierowuje wyjście błędów do pliku polecenie 2>&1 Przekierowuje wyjście błędów na zwykłe wyjście Zmienne ======= nazwa=wartość Utworzenie $nazwa ${nazwa} Użycie - wartość zmiennej ${#zmienna} Długość zmiennej $0 Nazwa skryptu $1, $2, ... Parametry skryptu lub funkcji $# Liczba parametrów $? Kod zwrócony przez ostanie polecenie czy funkcję $@ $* Wszystkie parametry $$ PID powłoki $RANDOM Liczba losowa z zakresu od 0 do ok. 32 tys. ${x:-d} Wartość zmiennej x, a jeśli pusta, to zwraca d ${x:=d} Wartość zmiennej x, a jeśli pusta, to zwraca d i przypisuje d do tej zmiennej ${x:?d} Wartość zmiennej x, a jeśli pusta to błąd i koniec ${x:+słowo} Wartość zmiennej x jeśli pusta, jeśli nie to słowo ${x+słowo} Wartość zmiennej x jeśli nie istnieje, jeśli istnieje to słowo ${x:off:count} Wycinek łańcucha x od znaku nr off, liczba znaków count ${x:off} Wycinek łańcucha x od znaku nr off do końca ${x#maska} Wartość zmiennej z usuniętym najkrótszym dopasowaniem maski na jej początku ${x##maska} Wartość zmiennej z usuniętym najdłuższym dopasowaniem maski na jej początku ${x%maska} Wartość zmiennej z usuniętym najkrótszym dopasowaniem maski na jej końcu ${x%%maska} Wartość zmiennej z usuniętym najdłuższym dopasowaniem maski na jej końcu ${!x} Wartość zmiennej o nazwie, którą przechowuje zmienna x (jakby wskaźnik) Polecenia do zmiennych ====================== export Eksportuje zmienną jako środowiskową readonly Robi zmienną na tylko do odczytu unset Czyści zawartość zmiennej nie usuwając jej read Wczytuje z wejścia łańcuch i wpisuje go do zmiennej $nazwa local = Tworzy zmienną lokalną (widoczną tylko w funkcji tej i z niej wywołanych) shift Przesuwa parametry - $1 zostaje usnięty, $2 staje się $1 itd. trap Łapie sygnały podłączając je do funkcji skryptu Tablice ======= zmienna=(x1, x2, x3, ...) Tworzy tablicę z elementami zmienna[0]=wartość Ustawia element tablicy unset zmienna[0] Usuwa element tablicy unset zmienna[@] unset zmienna[*] Usuwa całą tablicę ${zmienna[0]} Odwołanie do elementu tablicy ${zmienna} Odwołanie do pierwszego elementu ${zmienna[@]} ${zmienna[*]} Wszystkie elementy ${#zmienna[0]} Długość elementu ${#zmienna[@]} ${#zmienna[*]} Liczba elementów Konstrukcje sterujące ===================== break Przerywa pętle exit Kończy skrypt exit Kończy skrypt, zwraca liczbę return Wychodzi z funkcji, zwraca liczbę continue Rozpoczyna nowy obieg pętli _________________ Instrukcje wyboru if [ warunek ]; then ... elif [ warunek ]; then ... else ... fi case $zmienna in wartość1 | wartość2 | ... ) polecenia... ;; wartość3 | wartość4 | ... ) polecenia... ;; *) polecenia;; esac _____ Pętle while [ warunek ]; do ... done until [ warunek ]; do ... done for zmienna in wyraz1 wyraz2 wyraz3 ...; do ... done for zmienna in maska; do ... done for ((i=x1; $i